cssprovider: Improve error handling for import errors
authorBenjamin Otte <otte@redhat.com>
Mon, 16 Jan 2012 17:44:43 +0000 (18:44 +0100)
committerBenjamin Otte <otte@redhat.com>
Mon, 16 Jan 2012 17:44:43 +0000 (18:44 +0100)
We don't want to include the whitespace after an import statement.
Because people tend to add newlines after @import, we report the wrong
lines for failed imports. And that's bad.

gtk/gtkcssprovider.c

index 462b551d41349bebdbc62fa51a92c18234deabba..5285d29a3f9ebf93772dc1f8bb01f11c9f0b38f8 100644 (file)
@@ -1790,7 +1790,7 @@ parse_import (GtkCssScanner *scanner)
       return TRUE;
     }
 
-  if (!_gtk_css_parser_try (scanner->parser, ";", TRUE))
+  if (!_gtk_css_parser_try (scanner->parser, ";", FALSE))
     {
       gtk_css_provider_invalid_token (scanner->provider, scanner, "semicolon");
       _gtk_css_parser_resync (scanner->parser, TRUE, 0);
@@ -1818,6 +1818,8 @@ parse_import (GtkCssScanner *scanner)
   g_object_unref (file);
 
   gtk_css_scanner_pop_section (scanner, GTK_CSS_SECTION_IMPORT);
+  _gtk_css_parser_skip_whitespace (scanner->parser);
+
   return TRUE;
 }